package 数组算法;

public class canJump55 {
    /**
     * 贪心算法问题
     * 求解最大 最远 等问题……
     *
     * @param nums
     * @return
     */
    public boolean canJump(int[] nums) {
        // 记录可以到达的最远的位置
        int rightmost = 0;
        // 数组的长度
        int n = nums.length;
        for (int i = 0; i < n; ++i) {
            if (i <= rightmost) {
                rightmost = Math.max(rightmost, i + nums[i]);
                if (rightmost >= n - 1) {
                    return true;
                }
            }
        }
        return false;
    }
}
